#ifndef TABPOLTMANAGER_H
#define TABPOLTMANAGER_H

#include <QObject>
#include <QMap>
#include <QTabWidget>

#include "curveplot.h"
#include "curveplotmanager.h"

class tabPoltManager : public QObject
{
    Q_OBJECT
public:
    explicit tabPoltManager(QTabWidget *tabPlotWidget, QObject *parent = nullptr);

    // 写入配置到INI文件
    void saveToIni(const QString& filePath);

    // 从INI文件加载配置
    void loadFromIni(const QString& filePath);

    // 添加Tab窗口
    QWidget *addTab(const QString &tabName);

    // 删除Tab窗口
    void removeTab(const QString &delTabName);

    // 添加Chart到指定Tab
    void addChart(const QString& tabName,
                  const QString& chartName,
                  const QStringList& graphs);

    // 删除指定Chart
    void removeChart(const QString& tabName, const QString& chartNam);

signals:

private:
    QMap<QString, QWidget *> tabPlotWidgets;    // 存储Tab图表窗口

    QTabWidget *m_tabPlotWidget;
};

#endif // TABPOLTMANAGER_H
